# -*- coding: utf-8 -*-
# @Project : APITestModel
# @File    : DdtInput.py
# @Author  : 朱宽
# @Time    : 2021/4/1 9:28
# @Software: Win10 / Python3 / Pycharm
from src.public import CombinePacket

class EveryTestCaseFlag():
    '''
    主要获取指定测试用例名称标记的测试用例，并将这个用例组成列表返回
    '''
    def __init__(self,file_name,TestCaseFlag):

        self.CombinePacket=CombinePacket.CombinePacket(file_name=file_name)#初始化这个类
        self.test_data_all=self.CombinePacket.output_test_data()#调用这个函数，得到所有的测试用例数据
        self.TestCaseFlag=TestCaseFlag#全局化这个参数

    def get_every_TestCaseFlag(self):
        '''
        主要实现，在所有测试数据中筛选指定TestCaseFlag的用例数据
        :return:
        '''
        try:
            test_case_flag=[]
            for i in range(0,len(self.test_data_all)):

                if self.TestCaseFlag==self.test_data_all[i]['TestCaseFlag']:
                    test_case_flag.append(self.test_data_all[i])

            return test_case_flag

        except Exception as e:
            print(e)

if __name__=="__main__":
    import json
    test=EveryTestCaseFlag(file_name='zk-test-data.xlsx',TestCaseFlag='register0100')
    print('\n所有数据为：\n',json.dumps(test.test_data_all,indent=4,ensure_ascii=False))
    print('*'*200)
    print('\n指定的数据为：\n',json.dumps(test.get_every_TestCaseFlag(),indent=4,ensure_ascii=False))